System for fingerprint authentication

ABSTRACT

A system and means, which stores, regenerates, or matches shape of curves, by using a specified group of data in length to express a shape of curve. They use a sequence of several measure points on the curve, which are determined so as to make the same distances between those adjacent measure points. They are the data of lengths of arcs between starting measure point and ending measure points among every 3 consecutive measure points on the curve.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a system for fingerprint authentication, which is to extract minutia ridge shapes by use of simple data format to recognize curves and is to provide fast and effective mechanism with less memory space and computation complexity. Moreover, the invention achieves a higher identification precision for the poor-quality fingerprints by use of secondary minutia, false minutia detection, treatment of shifted and rotated fingerprint input, pipeline parallel processing within 0.24 seconds for raster scan image capture and feature extraction processing. The invention is used with computer, or any kind of processor or dedicated LSI (Large scale integrated circuits).

[0003] 2. Description of the Prior Art

[0004] One type of prior art fingerprint authentication is to extract position of minutia, which are points of ridge endings and bifurcations, in fingerprint images for both templates and input sample. Matching or verification is performed between extracted data of input sample and template. Since fingerprint images of input sample and template differ their position, rotation angle and noise environment, matching operation has large computational complexity such as compensation of shifting and rotation, and false minutia elimination. Main reason for difficulties in prior art comes from adoption of absolute measure, such as position of minutia, which is sensitive against shifting, rotation and noise.

SUMMARY OF THE INVENTION

[0005] The present invention is directed to a curve recognition system and its application to fingerprint authentication based on ridge shape information. It is small size data format for curves on discrete grids, and relative measure robust against shifting, rotation and noise. The invention provides fast and accurate fingerprint authentication algorithm and hardware system with small data storages of 50 bytes. Several important techniques are included in the invention such as secondary minutia, criteria for true or false minutia, treatment of shifted and rotated fingerprint input, pipeline parallel processing within 0.24 seconds for raster scan image capture and feature extraction processing, and several useful applications such as on-line verification.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006]FIG. 1 illustrates to derive numerical data to express information of minutia ridge shape.

[0007]FIG. 2 illustrates the movement and rotation of the image to be recognized

[0008]FIG. 3 illustrates the principle to calculate approximately coordinates of measure points, which locates between grids

[0009]FIG. 4 illustrates another feature data to express minutia ridge shape.

[0010]FIG. 5 illustrates to extract true minutia by thinning operation and reverse operation between black and white over black and white binary image.

[0011]FIG. 6 illustrates algorithm for extraction of true minutia including improvement of gray scale image.

[0012]FIG. 7 illustrates false minutia, which consists of

[0013] (a) two ending minutia close to each other, which posses the same directions as their minutia ridge shapes.

[0014] (b) an ending minutia near a bifurcation point.

[0015] (c) an ending minutia near boundary of image.

[0016]FIG. 8 illustrates process of both reverse of black and white and thinning.

[0017]FIG. 9 is an example for describing the secondary minutia in associated with a minutia.

[0018]FIG. 10 is an example to detect false bifurcation minutia in this invention.

[0019]FIG. 11 represents 2 dimensional memory areas of M rows and L columns for manufacturing without compensation for displacement.

[0020]FIG. 12 illustrates algorithm of feature extraction for recognition system by use of raster scan image capture.

[0021]FIG. 13 illustrates algorithm for finger authentication system as an example of this invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0022]FIG. 1 illustrates to derive numerical data to express information of minutia ridge shape. Minutia is a special point on the ridge of fingerprints, whether ridge is terminated at the point or ridge is bifurcated at the point. The former minutia is called ending minutia, while the latte is called bifurcation minutia. Minutia ridge is a ridge leaving from any kinds of minutia. Consider a minutia ridge, which is smooth curve 40 leaving from minutia 30 as shown in FIG. 1.

[0023] Sampling points (called measure points, hereafter) 31, 32, 33 and 34 on the ridge are taken in such a way that arcs 41, 42, 43 and 44 between measure points become unit lengths. This is similar way to measure path on the curve in the map by use of divider.

[0024] Based on said arcs, a length of arc 51 is measured as a feature, which becomes an arc of triangle comprised by the first and the second measure points and minutia.

[0025] Actually, measure points 31, 32 and 33 are decided by measuring unit length from previous measure point along the ridge, one by one. The length of arc from each measure point to its second next measure point is measured. As an example, arc 52 from minutia 30 to its second next measure point 32 is measured, and arc 53 from the first measure point 31 to its second next measure point 33 is measured.

[0026] As a result of this measurement, the numerical length data of arcs 51, 52 and 53 are used as information to express the minutia curve shape 40. These simple numerical data become fingerprint feature data.

[0027] By use of matching these fingerprint feature data with content of database (called template, hereafter) registered in advance, the system achieves fast matching and high recognition rate with a few memory in data size.

[0028] Consider the input fingerprint image, in which curve 40 moves and rotates as shown in FIG. 2. If shape of curve 40 is expressed by said numerical data such as lengths of arc 51, 52 and 53, they do not change against any move and any rotation of curve. Therefore, said numerical data such as 51, 52 and 53 can recognize, store, regenerate and distinguish shape of curve 40 from original curve. Matching or verification of shape of curve can be detected by comparing those numerical data.

[0029]FIG. 3 illustrates the principle to calculate approximately coordinates of measure points, which locates between grids. The image captured by digital camera or video deck is comprised precisely by a certain number of pixels, which react the light in similar to retina of human eyes. Though said pixels look precise textile, they are placed regularly with a certain period over rectangular grids.

[0030] In the case of digital image processing on computers, image data are represented by values on pixels, which lie over rectangular grids as shown in FIG. 3. Among those pixels, colored pixels are one to represent a curve.

[0031] Therefore, measure point 12, which is expected to be 4 pixels far from a pixel 100 on the curve, may not be on an actual pixel. In this case, location of measure point 12 must be calculated by location of 2 pixels 10 and 11 on the curve, which are the closest pixels to point of 4 pixels far from the pixel 100. As an example, location of measure point is calculated by the simple linear interpolation between location of pixel 10 and location of pixel 11. In this way, lengths of arcs 51, 52 and 53 are obtained by using measure point 12, whose location is not different from location of pixels.

[0032] The present invention includes algorithm to calculate measure point 12 on the curve 40, which locates a specified distance from a point on the curve 40. This algorithm enables to deal images of infinite resolution theoretically, if the location between two pixels is calculated in the image field of finite resolution.

[0033] Consider a triangle, consisting of a standard point and 2 closest pixels 10 and 11 on the curve, which are direct distance 99 far or close pixel from the standard point, respectively. Let an arc between standard point 100 and the first pixel 10 denote the first arc. Let an arc between standard point 100 and the second pixel 11 denote the second arc. Furthermore, let an arc between the first arc 10 and the second arc 11 denote the third arc. Then, a measure point on the third arc is decided in such a way that the point divides length of the third arc at the same ratio of lengths between the first and second arc. This interpolation increases the capability of curve recognition to large extent, regardless of the precision of this approximation.

[0034]FIG. 4 illustrates another feature data to express minutia ridge shape. Let's consider minutia ridge shape (400), which extends to reverse direction to bifurcation as shown in FIG. 4. Let a point on the ridge (400) denote “the second measure point” (402), which locates a distance D far from the first measure point. In similar way, we measure the 3^(rd) measure point (403), which locates the distance D farther than the second measure point. Then, we measure the 4^(th) and 5^(th) measure point (404) and (405) respectively. This procedure can be repeated until the ridge terminates or goes outside of boundary of image. Then, a series of arcs between adjacent measure points approximates shape of curve.

[0035] A effective method to express this piece wise linear curve is to measure “directional angle”, which is defined or calculated by an angle between standard axis and line connected from minutia (401) to the 1^(st) measure point. Then, “the first curvature” is measured, which is defined or calculated by an angle between line connected from minutia (1) to the 2nd measure point (402) and line connected from the 2nd measure point (402) to the 3rd measure point (403). Similarly, “the second curvature” is measured, which is defined or calculated by an angle between line connected from the 2^(nd) measure point (402) to the 3rd measure point (403) and line connected from the 3^(rd) measure point (403) and the 4^(th) measure point (404). In this way, angles are measured between adjacent lines, which are connected between measure points along the ridge. Thus, the necessary information becomes directional angle of minutia (408) and group of curvatures between adjacent lines (409)(410)(411).

[0036] Since the directional angle and group of curvatures express well a ridge shape, the capability of curve recognition is greatly improved by use of the information. This expression can be applied to not only bifurcation minutia, but ending minutia.

[0037]FIG. 5 illustrates to extract true minutia by thinning operation and reverse operation between black and white over black and white binary image. The original black and white image is processed by cascade connection of thinning block (Step S7) and compensation block of false minutia (Step S8).

[0038] The contour along ridge of black object in black and white image is reduced to 1 pixel in width. Thinning is conversion from area to line as shown in Step S7. More detail thinning process is described later according to FIG. 8.

[0039] The first extraction of ending minutia in original black and white image, black and white reversal process (Step S70) and the second cascade processing over reversal image, and the second extraction of ending minutia in reversal image can be performed without extracting both ending and bifurcation minutia. This is also described in detail according to FIG. 8.

[0040] This scheme makes algorithm more suitable, faster and more accurate to treat huge number of templates and samples without using large memory area and with simple hardware.

[0041]FIG. 6 illustrates algorithm for extraction of true minutia including improvement of gray scale image. Contrast of block, partitioned by block partitioning, is enhanced until it becomes binary image of black and white. This is the first binarization step. Then, ridge direction is calculated by ridge direction detection.

[0042] This ridge direction is used as a secondary information in eliminating noise component. Image information along ridge direction is judged as a valid information of ridge, while image information not along ridge direction is considered as a noise. This process is called as improvement of gray scale image.

[0043] Binarization is originally a process for analog signal to be digitalized, Here, this term is used as a process to convert 8 bit gray scale data into 2 bit black and white data.

[0044]FIG. 7 illustrates false minutia, which consists of

[0045] (a) two ending minutia (20) close to each other, which posses the same directions as their minutia ridge shapes.

[0046] (b) an ending minutia (21) near a bifurcation point.

[0047] (c) an ending minutia (22) near boundary of image.

[0048] After false minutia elimination (Step S8), which compensates noise components in said fingerprint data, the next procedure goes to extraction of true minutia (Step S9). Detail true minutia extraction (Step 8) is explained as a post processing according to FIG. 7.

[0049] FIGS. 7(a)(b)(c) illustrates 3 kinds of false minutia described as above, which are falsely recognized as true minutia. Compensation rule for false minutia is adopted as a post processing, which adds ridge to connect two ending minutia close to each other with the same direction or an ending minutia close to bifurcation point, or an ending minutia close to boundary of image.

[0050] Referring to FIG. 6 again, contrast of said improved image is enhanced up to obtain binarized image (Step S6). This binary image is derived from compressing width towards the center in thinning process (Step S7).

[0051] Thinning process (Step S7) brings an additional effect on simplifying complicated verification process.

[0052] At next, false minutia compensation (Step S8) is performed, which adds ridge to connect two ending minutia 20 close to each other with the same direction or an ending minutia 22 close to bifurcation point, or an ending minutia 22 near the boundary.

[0053] In this way, minutia extraction (Step S9) extracts remaining ending and bifurcation points as true minutia, after an above sequence of processing is applied over the input image, including compensation of false minutia. The fingerprint verification based on this method reveals high verification rate for noisy input images.

[0054]FIG. 8 illustrates process of both reverse of black and white and thinning. In FIG. 8, (a) corresponds to black and white picture before processing. (b) corresponds to intermediate result for minutia extraction. (c) corresponds to black and white reverse image. (d) corresponds to extracted minutia after the final processing.

[0055] The true minutia extraction with thinning (Step S7) and reverse of black and white image (S70) was explained by using FIG. 5. Though great reduction of image information is achieved, there still remains difficulty to digitalize bifurcation points.

[0056] Similarly, great reduction of information is achieved as shown in FIG. 8(b) and FIG. 8(a). However, there still remains critical problems, to which a unique judge can not be applied.

[0057] Therefore, in order not to deal with bifurcation minutia, the processing as shown in FIGS. 8(a) to (c) is performed over reverse black and white image (Step S70). Then, thinning process (Step S7) as shown in FIGS. 8(c) and (d) leads to ending of finite curve, i.e., ending minutia instead of said bifurcation. This processing is repeated twice.

[0058] In such a way, the finite curves are extracted, which do not include any bifurcation or any intersection of rides. This scheme reduces amount of necessary information to express fingerprint, and thus, makes numerical expression easy. The numerical information becomes quite small in comparison with original image.

[0059] In this way, fingerprint verification can be uniquely performed. Since no judge of human being is required, fast processing with small memory capacity and small load for database become possible.

[0060]FIG. 9 is an example for describing the secondary minutia in associated with a minutia (91). According to direction of minutia ridge, vertical axis (Y1) is set. Consequently, horizontal axis (X2) is decided as shown in FIG. 9. The four points (92) (93) (94) (95) are determined on the axis in such a way that the distances between these 4 points and the minutia (91) are the same.

[0061] The ridge shapes (RS1) (RS2) (RS3) (RS4) leaving from the nearest point on the ridge (herein, called as “secondary minutia”) to those four points are extracted by use of said curve recognition method, respectively. These ridge shapes are additional information in associated with original minutia (91) to express features of fingerprint. The fingerprint authentication system with ridge shapes of secondary minutia brings the tremendous improvement on precision of matching.

[0062]FIG. 10 is an example to detect false bifurcation minutia in this invention. True bifurcation minutia in most cases partitions area into 3 parts, which consists of one narrow angular area (A101) and two wide angular areas (A102) (A103). The same things can be said for bifurcation minutia in valley. Bifurcation minutia in valley in associated with the ending minutia partitions area into similar 3 parts of 1 narrow angular area and 2 wide angular areas.

[0063] This characteristic is used to judge whether a detected minutia is true or false. For this purpose, 3 points on each ridge or each valley line are selected in such a way that they are the same distance far from the bifurcation minutia. Let 3 points denote as points (102) (103) (104), whose coordinates are (Xa, Ya), (Xb, Yb) and (Xc, Yc) respectively in coordinate system of origin (101).

[0064] With regards to a point pair of point(102) and point (103), we calculate the sum (XaXb+YaYb) of product (XaXb) of horizontal coordinate pair and product (YaYb) of vertical coordinate pair of two points. Herein, the sum (XaXb+YaYb) is called as “an inner product of 2 points”. The value of this inner product corresponds to cosine function of the angle between a line of (101) (102) and a line of (101) (103). It means that if the value is large, the angle between two lines is narrow and if otherwise, the angle between two lines is wide. In similar way, an inner product of two line pair of (101)(103) and (101)(104), and an inner product of two line pair of (101)(102) and (101)(104) are calculated.

[0065] The point (101) is judged as a true minutia if there exists only 1 greater inner product among these 3 inner products. This case corresponds to the situation of true bifurcation minutia, where only one narrow angular area exists. Otherwise, the point (101) is judged as a false minutia.

[0066] Even if two fingerprint images of identical finger are captured by the system, positions and directions of extracted minutia are not the same. They depend on the positions and angles of the finger put on an input sensor. For matching between two fingerprint images, one of images should be compensated before comparison in the conventional method. To specify displacement and rotation and to compensate them need tremendous amount of computation. In order to avoid this difficulty, it is usually that displacement and rotation of input fingerprint image are strictly restricted. The present invention presents the matching method without compensation for displacement due to simple shifting.

[0067]FIG. 11 represents 2 dimensional memory areas of M rows and L columns. Before the process of fingerprint matching, memory areas are supposed to have initial values such as zero.

[0068] Here, consider similarity measure of any kinds, whose numerical values correspond to how similar any pair of minutia in two fingerprint images. This similarity measure is calculated based on the ridge direction and similarity of curve shape. If pair of minutia is quite similar, a value of similarity function becomes large. On the other hand, if pair of minutia is not so similar, a value of the similarity function becomes small.

[0069] For said two minutia, let (Xa, Ya) and (Xb, Yb) denote 2 dimensional coordinates in two fingerprint images, respectively. 2 dimensional vector (Xb-Xa, Yb-Ya) is a vector from position of minutia in one fingerprint image to position of minutia in the other fingerprint image. This means that the minutia shifted with (Xb-Xa) along horizontal direction and (Yb-Ya) along vertical direction if the former minutia matches with the latter one. If the value of similarity function between two minutia is large, the possibility of displacement (Xb-Xa, Yb-Ya) of the former fingerprint image is high. On the contrary, if the value of similarity function between two minutia in different fingerprint images is small, the possibility of displacement (Xb-Xa, Yb-Ya) of the former fingerprint image is small.

[0070] After a comparison between two minutia in different fingerprint images, the value of similarity measure is added to the value, which is stored in memory area of (Xb-Xa, Yb-Ya) corresponding to said 2 dimensional vector (Xb-Xa, Yb-Ya). A sequence of operations is repeated for comparison between each minutia pair in different fingerprint images.

[0071] As a result, the values in the memory distribute over different addresses because of inaccuracy of position estimation of extracted minutia. If minutia positions are accurately extracted, the strong peak value can be expected in the memory. On the contrary, in case two minutia are produced by different fingers, the same operation may bring the distribution of values in memory without any large peak value.

[0072] However, since to specify amount of displacement is not a final purpose, the maximum value in memory is directly evaluated. If it exceeds a certain threshold value, two input fingerprints are concluded to be identical. Otherwise, two input fingerprints are likely to be different.

[0073] The present invention gives a solution not only for shifting, but for rotation of fingerprint images by use of said matching method without using any compensation of shifting. To compensate displacement due to rotation, all the minutia of input fingerprint image are compensated for rotation. Remind that feature data in the present invention consists of 2 dimensional coordinates and the information for minutia ridge shape. The 2 dimensional coordinates or position of minutia are compensated by rotation around a standard origin with a certain angle. Among information for minutia ridge shape, directional angle of minutia is also compensated to the same extent. However, compensation is not necessary for curvatures of minutia ridges because they are invariant against rotation. After compensating all minutia ridge shapes with the angle, the method without compensation of shifting is applied to do matching between two fingerprint images.

[0074] Since rotation angle is not known, the above processing is repeated for different angle of rotation until a rotation angle is specified by getting the largest values in memory.

[0075]FIG. 12 illustrates algorithm of feature extraction for recognition system by use of raster scan image capture. Camera image capture, which is similar to raster scan TV set, sends one frame data in a certain period of time to DSP. Camera scans sequence of frames at a certain frame rate such as 25 or 30 frames per second. In each frame, a block data of partial area in a frame is stored (Step S92). Then, feature extraction processing (Step S93) is performed in limited short time as shown in FIG. 5 and 6.

[0076] Feature extraction processing (Step S93) is performed by computer, which executes 1 million instructions per second. Assuming that fingerprint feature data of 50 bytes is assigned to computer, it takes about 0.24 second for feature extraction (Step S93) and their storages. This verification time corresponds to time for 6 or 7 frame in raster scan system of 25 or 30 frames per second.

[0077] Actually, consecutive 5, 6 or 7 frames are required under the assumption that input fingerprint images are identical among those frames. Feature extraction (Step S93) and storage of feature data (Step S94) for whole fingerprint image completes within raster scan time for 5, 6 or 7 frames. Then, termination of whole image processing (Step S95) also terminates algorithm.

[0078]FIG. 13 illustrates algorithm for finger authentication system as an example of this invention.

[0079] Processing from camera image input (Step S1) to true minutia extraction (Step S9) and then termination of whole image processing (Step S95) consists of partial algorithms explained with FIG. 5, 6, 7, 8 and 9.

[0080] Block thinning (Step S2) after camera image input (Step S1) is always necessary in actual implementation, which leads to binarization (Step S3) and improvement of gray scale image (S5) for each partitioned block image.

[0081] When the result of termination of whole image processing is “YES”, the next step becomes either matching process (Step S74) or storage in database of fingerprints (Step S75). In matching process (Step S74), extracted feature data in the form of numerical data is used to compare with templates stored in database of fingerprints.

[0082] In block processing, blocking noise is usually generated, which is seen as discontinuity of images on the boundary of blocks. The noise is eliminated by software. In order not to lose necessary information and to keep or capture information of whole image, boundary data of blocks overlap with data in adjacent blocks.

[0083] In this way, computer with ability of 1 million instructions per second, performs a sequence of processing such as noise elimination of input fingerprint image, image improvement, binarization, thinning, elimination of false minutia and matching with database, within 0.24 seconds by use of from 40 to 60 bytes data for extracted features.

[0084] Herein, improvement and various kinds of processing are explained in detail. Ridge direction is extracted from fingerprint image before partitioning into blocks as shown in FIG. 6 and FIG. 13. Then, directional filter, not shown in figure, is used for said improvement of gray scale image (Step S5). When fingerprint image is input to directional filter, it is modified if a part of image is quite different from ridge shape of normal fingerprint. Modification is performed by computer, but it resembles such a human's action that contour of the ridge is redrawn by hand to make ridge image clearer.

[0085] Sophisticate software is implemented on Digital Signal Processor (hereafter, called as DSP). It is quite similar to such human's action that parts to be modified are detected by eyes and modified by hand based on estimation derived from ridge direction information around them.

[0086] Block thinning is a processing of each block, obtained by partitioning raster scanned whole image into rectangular array. It leads to unique processing by simplifying complex image processing, which is not suitable for computers. If width of a ridge is reduced to one pixel in size, minutia ridge shape becomes a simple line connected to the minutia. It enables machine recognition with unique processing.

[0087] For those processing, whole information for said block image is not stored in memory at a time. Local minutia 30, which are robust against rotation, shifting and noise, and their associated arcs 51, 52, 53, are extracted by local processing soon after block image is read. While, the other raster scanned block images are not read during processing of the block. This scheme reduces required memory capacity.

[0088] Actual system configuration consists of compact video camera and Digital Signal Processor (DSP). Algorithm in this invention is stored as program in DSP. 32×22 pixel image in each small block is selected from 200×200=40,000 pixels, which are whole image input from video camera in raster scan fashion. They are stored temporary in data memory of DSP. By described processing, information of minutia ridge shape is extracted as numerical data, based on measure points 31, 32, 33, 34 on ridge 40.

[0089] Next input data of another block image is processed in the same way. Since it takes time to extract arcs 51, 52, 53 as feature data, consecutive block image is not processed in the same frame. Since computer is busy to extract minutia ridge shape information, it does not accept new input information during processing so as to save memory capacity.

[0090] Since each block processing can be performed independently on each other, 6 frames are input to cover whole image area under raster scan speed of 25 frame per second (corresponding to PAL or SECAM in Europe and Russia) In other words, a little bit more than ⅙ image data of each frame is input to computer. Described overlapped image between adjacent blocks makes data size of each frame greater than ⅙ image data.

[0091] Since it takes at least about 0.24 seconds for said DSP to extract said minutia ridge shape information, whole image area cannot be covered by 1 frame raster scan input. 1 frame raster scanning takes similar time to {fraction (1/25)} or {fraction (1/30)} (NTSC in US and Japan) seconds. Therefore, during time of {fraction (6/25)} or {fraction (7/30)} seconds to scan 6 or 7 frames, consecutive operations, such as capture of partitioned block image and processing of the image to final format as feature data, are repeated.

[0092] In practical application of fingerprint authentication system, template data, which are also extracted feature data of fingerprint are stored in advance in memory of DSP or database in host computer. Then, input feature data is extracted as a sample from input fingerprint image for verification. The data is matched with several templates registered in database. By using criteria for verification, the system judges whether input fingerprint is accepted or rejected by the system.

[0093] As a measure to evaluate fingerprint authentication system, there are two kinds of measure, which are false acceptance ratio (referring FAR) and false rejection ratio (referring to FRR). FAR is a ratio between falsely accepted samples (unregistered fingerprint) among many samples for verification. Ideal system requires that FAR is zero. However, zero FAR means the complete verification system, which may reject not only unregistered samples, but some of registered samples.

[0094] On the other hand, FRR is a ratio between falsely rejected samples (registered fingerprints) among many samples for verification. In practical system, FRR and FAR are closely related with each other. Those values traded off by changing a threshold value, which is used to judge acceptance or rejection in verification. A score as a similarity measure is usually generated as a result of matching between input sample and registered template. If the higher threshold is set, FAR become smaller, while FRR become larger.

[0095] This invention succeeds to achieve FRR less than 1.2% when FAR is set to be zero. The result is compared with world top data of 27.72%. This improvement also means the improvement of recognition ability against rotated, shifted and noisy input fingerprint images.

[0096] Extraction of 50 bytes feature data and verification in this invention is actually implemented on DSP in speed of 1 million instructions per second. It takes 0.24 seconds for a sequence of processing such as noise elimination, image improvement, binarization, thinning and verification. This time shows greater improvement than conventional one in terms of speed and accuracy.

[0097] When this invention is used over networks to connect to an information center, which stores fingerprint feature templates, the system works as on-line personal authentication system accessed in remote.

[0098] The rule to authenticate registered person by logical operation such as AND, NAND, OR, and NOR of fingerprint feature data of plural fingers. For an example, the acceptance rule at home may be OR operation among fingerprints of thumbs of father, mother and all children. For another example, it may also be applicable to authentication of car driving according to damage insurance for automobile accidents limited to drivers in family.

[0099] Since each person has 20 fingers, their combinations posses more variety than encryption. In addition to that, the ability to protect personal rights is increased more strongly than encryption. If the acceptance rule of AND operation of both thumb and baby fingers is adopted, its ability become tremendous.

[0100] Even if a new law in terms of electronic commerce in United States of America permits “encryption possesses equivalent lawful effect on signature”, it is concluded as a usual and final decision in terms of personal authentication that fingerprint authentication will keep priority to encryption.

[0101] In summary, the present invention provides a curve recognition system and its application to fingerprint authentication based on ridge shape information, which achieves small size data format for curves on discrete grids, fast and accurate fingerprint authentication algorithm and hardware system with small data storages. Several important techniques are included in the convention such as ridge shape of secondary points, true and false minutia detection, treatment of shifted and rotated input of fingerprint image, pipeline parallel processing for raster scan image capture and feature extraction processing, and several useful applications. 

1. A system for fingerprint authentication, which comprises: which stores, regenerates, or matches shape of curves, by using a specified group of data in length and/or angle and/or position to express a shape of curve, in said system using sequence of several measure points on the curve, which are determined so as to make the same distances between those adjacent measure points, the data of lengths of arcs being between starting measure point and ending measure points among every 3 consecutive measure points on the curve.
 2. The system as in claim 1 for recognition of curve expressed on the periodic discrete grids such as digital image, which determines position of measure points by interpolating positions of two nearest adjacent grids on the curve, whose distances from starting measure point are less and greater than the specified value, respectively.
 3. A system as in claim 1 for fingerprint authentication, comprising a sequence of processing: means for block partitioning to partition whole image data into plural pieces of blocks. means for the first binarization to make gray scale image a binary black and white image by enhancing contrast of original image. means for deriving directions of ridge in binary image. means for noise elimination to eliminate black data not located along directions of ridge. means for the second binarization to make gray scale image a binary data by enhancing contrast of original images. means for thinning by reducing width of ridge until ridge width becomes one pixel in size. means for false minutia elimination to eliminate plural minutia located closely to each other, ending minutia located near bifurcation minutia, minutia located closely to image boundary, and isolated minutia without ridge, and means for extracting minutia to adopt remaining minutia as true minutia after above false minutia elimination.
 4. A system as in claim 1 wherein it utilizes, as a additional feature of fingerprints, both said minutia ridge shape and said ridge shape of secondary minutia, whose position is determined in associated with each minutia.
 5. A system as in claim 3, wherein two kinds of extraction means for ending minutia are performed over original black and white image and its reversed black, instead of extracting both ending and bifurcation minutia over original black and white image.
 6. A system as in claim 1, wherein it includes a cost effective calculation for judging true or false minutia, comprising: means for taking 2 dimension coordinates with an origin of a bifurcation point. means for taking 3 points on different ridges leaving from the bifurcation point with the same distances from the bifurcation point. means for calculating all inner products of 2 point vector selected from said 3 points, wherein inner product means sum of multiplication of horizontal components of said 2 points with each other and multiplication of vertical components of said 2 points with each other. means for judging the bifurcation as a false bifurcation minutia if all 3 said inner products are less than a specified value. Otherwise, judging the bifurcation as a true bifurcation minutia. means for judging ridge ending as a false ending minutia by using the similar inner products over valleys if all 3 said inner products are less than a specified value. Otherwise, judging the ending as a true ending minutia.
 7. A system for fingerprint authentication as in claim 1, wherein under assumption of consecutive frame inputs of identical fingerprints, a different part of fingerprint image is processed in said way to generate numerical data for each frame input of fingerprint image and processing of a whole fingerprint image is completed for plural frame inputs of fingerprint image.
 8. A system for fingerprint authentication, wherein it uses means of judge on fingerprint verification without compensation for displacement of input fingerprint image, comprising means for employing memory area in 2 dimensional coordinates for judge. means for calculating a similarity measure for each pair of minutia data between input fingerprint image and registered template fingerprint. means for accumulating the similarity measure in the memory area, whose coordinates are the same as vectors between the positions of the said 2 minutia. The similarity measure means any numerical data to express similarity between 2 minutia. means for judging input fingerprint as the same registered one if the maximum value in memory area exceeds a specified value.
 9. A curve recognition system or means for fingerprint authentication, wherein it is robust against any rotation and displacement of input fingerprint image, comprising, means for rotating coordinates of all minutia with a rotation angle around a specified origin. means for compensating minutia ridge shape for rotation of the said same angle. means for employing fingerprint matching method without compensation of displacement of fingerprints as in claim
 10. 10. A curve recognition system as in claim 7, wherein under assumption of consecutive several frame inputs of identical fingerprint, it takes 6^(th) of 25 seconds to complete processing from image capture to numerical processing, which corresponds to input time of 6 or 7 frames.
 11. A system as in claim 1 for fingerprint authentication, comprising means for extracting said numerical data of said fingerprint ridge shapes of ridge leaving from said minutia. means for matching numerical data with template samples registered in advance or database in said way.
 12. A system as in claim 1, wherein on 100 MOPS computer, it performs a sequence of processing as said thinning, said improvement or said compensation, said binarization, said thinning, said collection and said matching of fingerprint feature data expressed by 40 or 60 bytes data in size. MOPS means unit of operation speed of computer, which represents million operations in one second.
 13. A system as in claim 1, comprising means for extracting said fingerprint feature data of 40 or 60 bytes from said fingerprint template transferred from outer device or terminal equipment. means for transferring result of matching with said templates through communication network to outer device or terminal equipment.
 14. A system as in claim 1, wherein it is used with terminal or stand-alone equipment, which posses a function such as search for personal history, key lock, issue of various tickets, access control and toll of gates, electric commerce, and fund management in medical, social welfare, service, public service, and financial organization.
 15. A system as in claim 1, wherein it is embedded in hardware or software as a part of design data protection. To use the hardware or software requires personal authentication with fingerprints.
 16. A system as in claim 1, wherein criteria of acceptance is decided by logic operations among extracted feature data of plural fingerprints. 